﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;

namespace HdRSpielbox
{
    static class Definitionen
    {
        /// <summary>
        /// Der Haupteinstiegspunkt für die Anwendung.
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new StartScreen());
        }
    }

    /* Diese Klasse ist ein Interface für alle Spiele, welche ausgeführt werden können
     * Die Liste Playerliste enthält eine Liste mit allen am Spiel telnehmenden Spieler
     * Die Variable Running sollte immer true sein solange das Spiel läuft
     * Diese 3 Funktionen müssen noch implelentiert werden:
     * Init() zum initialisieren 
     * Start() Startet das Spiel
     * Abort() Bricht das Spiel sofort ab
     */
    public abstract class Spiel
    {
        public Boolean Running;
        public List<Player> Playerliste;
        public Form Window;


        public Spiel()
        {
            Playerliste = new List<Player>();
        }

        public void AddPlayer(Player p)
        {
            Playerliste.Add(p);
        }

        public abstract void Init();
        public abstract void Start();
        public abstract void Abort();
    }

    public class Player
    {
        public string name;
        public System.Drawing.Bitmap picture; 

        public Player(string name)
        {
            this.name = name;
        }
        public void AddPicture(System.Drawing.Bitmap p)
        {
            picture = p;
        }

    }
}
